home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Chip 1996 April
/
CHIP 1996 aprilis (CD06).zip
/
CHIP_CD06.ISO
/
hypertxt.arj
/
9410
/
R_BROWN.CD
< prev
next >
Wrap
Text File
|
1994-11-23
|
8KB
|
141 lines
@VRalf Brown's Interrupt List 41@N
@VVektorok közt hányódva@N
Az x86 alapú számítógépeken a felhasználói programok és a
rendszer többi része (DOS, BIOS) között a hardver és
szoftver megszakítások teremtenek kapcsolatot.
A magasszintû nyelven programozók ritkán kerülnek közvetlen
kapcsolatba velük, de a rendszerbe mélyebben nyúlók nem
nélkülözhetik a különbözô megszakítási rutinok alapos
ismeretét.
Az interrupt rutinok alapvetôen távoli szubrutinnak
tekinthetôk. A fô eltérés a szubrutinhívás és
megszakításkérés között az, hogy az elôbbinek a pontos
címét kell tudni, az utóbbinak elég csak a sorszámát. Egy
PC-n alapvetôen 256 interruptot érhetünk el. A többséget a
futó program vagy az operációs rendszer használhatja, ezek
a szoftver interruptok. Kisebb részükre a futó programtól
függetlenül, valamilyen külsô esemény bekövetkeztekor
(billentyleütés, idôzítô áramkör szignálja stb.) kerül a
vezérlés, ezek a hardver interruptok.
A rendszer 256 interrupt vektora már kezdetben sem volt
elég a programozói igények számára, ezért az egyes
megszakítások több funkcióra, a funkciókon belül pedig
alfunkciókra oszlanak. A különbözô funkciók, alfunkciók
száma szinte a végtelenségig bôvíthetô, az egyre újabb DOS
verziók, hálózati szoftverek, Stacker stb. ezt rendszeresen
bôvítgetik is. A korral haladni kívánó programozókat
sokszor szinte az ôrületbe kergeti a növekedés üteme.
@VIsmert, ismeretlen@N
A rendszerhívások elsô csoportja, a BIOS megszakítások jól
dokumentáltak. Bár az IBM folyamatosan fejleszti PS/2-es
gépeinek BIOS-át, a klóngyártók már évekkel ezelôtt
leragadtak az AT BIOS-nál, ezért ez tekinthetô a
szabványnak.
Az alap megszakítások másik csoportja az operációs rendszer
rutinjait tartalmazza. A DOS rutinjainak nagyobb része
közismert, a Microsoft minden egyes újabb verzió
megjelenése után közreadja az újdonságok listáját. Ezek --
az úgynevezett dokumentált -- funkciók nem változnak az
idôk során, így lehetséges az, hogy a régebben megírt
programok futóképesek maradnak az újabb DOS-verziók alatt
is.
A DOS rutinjainak egy kisebbik része nincs hivatalosan
közzétéve. Ezek a nem dokumentált (undocumented) utasítások
a DOS belsô rutinjai. A tiltott gyümölcsnek számító rutinok
egyike-másika igen jól használható. Fôleg a tárrezidens
programok írói szeretnek köztük matatni. A nem publikált
rutinok veszélyei sokszor a nagy szoftvercégeket sem
tartják vissza a használattól: a következô DOS verzióhoz --
amibôl esetleg hiányzik az adott rutin -- legföljebb újra
írják a programot, ez csak plusz pénzt hoz a kasszába.
A legnagyobb kavarodás a különbözô gyártók eszközmeghajtói
és más TSR programjai körül van. Ha mondjuk a kismaláriai
United Soccer cég gombfoci drivere hasonló rendszerbôvítést
hoz létre mint egy szaharai cég sorosvonali teveszámláló
programja, akkor aligha fogunk a púpos állatkák
katalogizálása közben rezidens gombfocibajnokságot vívni. A
bosszantó ütközések nemcsak a kis cégek programjai között
lehetségesek, közismert cégek elterjedt programjainak
README file-jai rendszeresen ""Kivel nem férek össze"
listákkal vannak tele.
Egy ízben magam is ütközésektôl tartva biztonságos helyet
néztem ki kommunikációs rutinom számára: a DOS szabványos
bemenetére kívántam írni -- mivel ezt épeszû programozó nem
teszi, biztos nem ütközök senkivel. Legnagyobb
megdöbbenésemre a Novell Btrieve adatbázis-engine-jébe
botlottam.
@VLeírást, akár a föld alól is!@N
Hasonló esetekbe szinte majd' mindenki botlott már, ezért a
programozók többsége tíz ujjal kap mindenféle hiánypótló
dokumentáció után. Különféle interrupt-leírások láttak már
napvilágot a szabályos és a dokumentálatlan megszakítási
funkciókról, egy magyarul is megjelent, ""A DOS titkai"
címmel.
A nyomtatott dokumentációk alapvetô hibája, hogy nem
naprakészek a lassú nyomdai átfutás miatt. Ezt felismerve
egy amerikai programozó, Ralf Brown a maga által
felfedezett dolgokat a világ egyik legnagyobb nyilvános
számítógép-hálózatán, az Interneten tette közzé.
Az elsô lista a nyolcvanas évek végén keletkezett, s ma már
a 41., alaposan kibôvített kiadásnál tart. Az eredetileg
csak Ralf Brown munkáját tartalmazó anyag a többszáz,
önként csatlakozott társ segítségével napról napra nô. A
bôvülés igen gyors, Ralf Brown manapság fôleg az általa
elindított adatlavina megregulázásával foglalkozik. Az
Interrupt List másfél, három hónaponként kerül frissítésre.
Mire Olvasóink kezükbe veszik eme irományt, a 42-es kiadás
már biztosan megjelent, talán már a 43-as is.
@VAdatbánya, ingyen@N
A 41-es kiadás mintegy 6400 megszakítás-funkció leírását,
közte 2100 táblázatot tartalmaz. A szövegközti táblázatokon
túl részletes ismertetô van a BIOS/DOS változókról, a
portkiosztásról, és a legfontosabb PC-s fogalmakról,
rövidítésekrôl. A listák a szabványos port- és
interruptkezelésen túl több mint száz cég termékeinek
többé-kevésbé ismert dolgait magyarázzák el. A
memóriakezelôktôl a hangkártyákig sok mindent
megtalálhatunk itt, idônként egy-egy vírus disznóságaira is
fény derül. Akinek bôvebb információra van szüksége, annak
is érdemes itt körülnéznie: Ralf listáiban az egyes
termékekre vonatkozó szakirodalom jegyzéket is találunk.
A listák négy ZIP file-ban kerülnek kiadásra,
INTER41A..INTER41D néven (a sorszám persze változik). A
három és fél megányi anyaghoz egy Interview nevû
keresôprogram is tartozik, ezzel
interruptszám-funkció-alfunkció, vagy téma szerint is
kereshetünk. Apró segédprogramokkal a lista Norton Guide
(Expert Help), PopHelp, MS Quick Help, vagy Windows Help
forrásokká alakítható. A szükséges fordítóprogramokkal (NGC
stb.) rendelkeznünk kell.
Az interrupt listák ingyenesek, az Internetrôl vagy a
Fidonetrôl letölthetôk (természetesen az Internet díját és
a telefonszámlát fizetni kell). Olvasóink BBS-ünkrôl is
beszerezhetik az aktuális verziót (CT BBS, (36-1)140-9312,
este 6 és reggel 9 között).
@KBata László@N